﻿using System;

namespace StringApplication
{
    class StringProgram
    {
        static void Main(string[] args)
        {
            // C# string.Format格式化日期
            DateTime dt = new DateTime(2017, 4, 1, 13, 16, 32, 108);
            string.Format("{0:y yy yyy yyyy}", dt);//17 17 2017 2017
            string.Format("{0:M MM MMM MMMM}", dt);//4  04 四月 四月
            string.Format("{0:d dd ddd dddd}", dt);//1  01 周六 星期六
            string.Format("{0:t tt}", dt);//下 下午
            string.Format("{0:H HH}", dt);//13 13
            string.Format("{0:h hh}", dt);//1  01
            string.Format("{0:m mm}", dt);//16 16
            string.Format("{0:t tt}", dt);//32 32
            string.Format("{0:F FF FFF FFFF FFFFF FFFFFF FFFFFFF}", dt);//1 1  108 108  108   108    108
            string.Format("{0:f ff fff ffff fffff ffffff fffffff}", dt);//1 10 108 1080 10800 108000 1080000
            string.Format("{0:z zz zzz}", dt);//+8 +08 +08:00

            string.Format("{0:yyyy/MM/dd HH:mm:ss.fff}", dt);//2017/04/01 13:16:32.108
            string.Format("{0:yyyy/MM/dd dddd}", dt);//2017/04/01 星期六
            string.Format("{0:yyyy/MM/dd dddd tt hh:mm}", dt);//2017/04/01 星期六 下午 01:16
            string.Format("{0:yyyyMMdd}", dt);//20170401
            string.Format("{0:yyyy-MM-dd HH:mm:ss.fff}", dt);//2017-04-01 13:16:32.108

            // 除去string.Format()可以对日期进行格式化之外，*.ToString()也可以实现相同的效果：
            dt.ToString("y yy yyy yyyy");//17 17 2017 2017
            dt.ToString("M MM MMM MMMM");//4  04 四月 四月
            dt.ToString("d dd ddd dddd");//1  01 周六 星期六
            dt.ToString("t tt");//下 下午
            dt.ToString("H HH");//13 13
            dt.ToString("h hh");//1  01
            dt.ToString("m mm");//16 16
            dt.ToString("s ss");//32 32
            dt.ToString("F FF FFF FFFF FFFFF FFFFFF FFFFFFF");//1 1  108 108  108   108    108
            dt.ToString("f ff fff ffff fffff ffffff fffffff");//1 10 108 1080 10800 108000 1080000
            dt.ToString("z zz zzz");//+8 +08 +08:00

            dt.ToString("yyyy/MM/dd HH:mm:ss.fff");//2017/04/01 13:16:32.108
            dt.ToString("yyyy/MM/dd dddd");//2017/04/01 星期六
            dt.ToString("yyyy/MM/dd dddd tt hh:mm");//2017/04/01 星期六 下午 01:16
            dt.ToString("yyyyMMdd");//20170401
            dt.ToString("yyyy-MM-dd HH:mm:ss.fff");//2017-04-01 13:16:32.108
        }
    }
}